/////////////////////////////////////////////////////////////////////////////
/*/	
 *	Creator:		Joshua C. Rouzer
 *	Title:			
 *	Last Edited:	06/11/2013
 *	Summary:		
/*/
/////////////////////////////////////////////////////////////////////////////
#ifndef CANCHOR_H
#define CANCHOR_H
#include "SPosition.h"
#include <vector>

class CSGD_Direct3D;
class CSGD_TextureManager;
class CSGD_DirectInput;
class CSGD_XAudio2;

class CAnimInfo;

struct Frame;

class CAnchorPointAnimation
{
	std::vector<Frame*> Frames;
	std::string Name;
	int m_nImageID;
	bool isLooping;

	CSGD_Direct3D*			m_pD3D;
	//CSGD_DirectInput*		m_pDI;
	CSGD_TextureManager*	m_pTM;
	//CSGD_XAudio2*			m_pXA;

	float	m_fTimeWaited;

	//CAnchorPointAnimation(const CAnchorPointAnimation& Other);
	//CAnchorPointAnimation& operator=(const CAnchorPointAnimation& Other);

public:
	CAnchorPointAnimation(void);
	~CAnchorPointAnimation(void);
	void Initialize(int ImageID, std::string name, bool loop);
	void Shutdown();
	void Play(bool flip, bool bLoop, CAnimInfo& Info);
	void Pause(CAnimInfo& Info, bool playing = false);

	void AddFrame(Frame* newFrame);
	void SetImageID(int ID);
	int GetImageID();

	void SetName(std::string nem);
	std::string GetName();

	void SetIsLoop(bool Loop);
	bool GetIsLoop();

	std::vector<Frame*> GetFrames();
};
#endif